ASP.NET Core 2.0文档翻译

ASP.NET Core 2.0文档翻译

原文链接:https://docs.microsoft.com/en-us/aspnet/core/ 作者:陈广


2018-5-21

TOC 终于搞定!之前以为可以找到现成的代码,然而做的时候才发现,没有。网上有一个功能强大的,但它是用 JQuery 实现的,代码一句没看懂。我是没有打算花精力学习 JQuery 的,到现在为止还是坚持前端不用任何框架。没办法,硬着头皮自己实现了。想不到,这高大上的东西,居然也给我实现了,学习过程中,最让人兴奋的事,莫过于此。

TOC 原本是可以在服务器实现的,不过这样的功能完全没必要放在服务器,浪费服务器的资源。所以这次完全使用 JavaScript 实现。首先根据文章里的 H2 到 H4 标签生成 TOC 条目并显示。这次并没有使用之前实现的树形目录。而是另外写了一个,没办法,需求不一样,要改成兼容的还不如新写一个。好在 TOC 目录不需要折叠,简单得多了,一排 li 搞定。生成的 TOC 条目会自动加上章节层级编号。点击相应条目,文章会自动滚动到条目所对应的章节,这里使用的是动画滚动方式,而不是直接跳转。这是因为之前使用其它的文章浏览系统,点 TOC 直接跳转到位时,无法知道滚动方向总感觉不太舒服。当然,为实现这个功能费了不少周折。另外在滚动文章内容时,右边 TOC 会自动高亮所在章节对应的条目。这个叫双向绑定吧,左边的动作会影响右边 ,右边的动作也会影响到左边。使用手机浏览文章时,也可以调出 TOC。

总之,现在这个浏览系统已经成为我使用过的所有浏览系统中,浏览功能最为强大的了。当然,仅是浏览功能,不是功能。

2018-5-15

这段很忙,基本没什么时间,只能抽一些零碎时间继续做我的文章发布系统。前几天算是把文章发布系统的浏览文章部分按最初的设想给实现了,使用数据库存放markdown文章及相关信息。但人就是这么奇怪,会突然改变。做完后突然想起我的三一轻工(1核,1G内存,1M带宽)网站,真的有必要用数据库吗?是否能承受?装个数据库都会用掉不少内存吧。这个问题之前也考虑过,当时决定用数据库。突然改主意了,还是使用文件系统。当然,改成文件系统也不费什么力气,修改 model 层就OK了。现在终于改完,可以使用了。

文章部分和之前没任何不同,增加了目录导航,使用相应 URL 可以直接访问文章,也可以通过鼠标点击导航栏目录访问相应文章。为了保证点击目录不会折叠已打开的目录,点击目录时使用 AJAX 向服务器请求文章内容。服务器将 Markdown 转化为 HTML 返回,然后浏览器显示 HTML 格式文章内容。当然本来也可以通过 cookie 或 session 来存放目录状态来实现目录状态不改变,但想来想去还是用 AJAX 实现更好些。手机浏览时导航栏会自动隐藏,可通过按钮点开。

实现的效果,自我感觉还是相当满意的,和当初的设想差不多。我放在了另外一个服务器上,将来完善了再迁回主服务器吧。可通过主网站菜单栏访问。网址为:IOT小分队文章发布系统 v0.2。UI 有改进余地,将来能抽出时间了再慢慢配色,改 CSS。

当然,浏览文章部分还缺个 TOC。在 Markdown 转 HTML 部分我使用的是 Markdig 组件,现在的问题是这个组件速度是最快的,但并不支持 TOC,下一步要考虑怎么把 TOC 弄上去,可能需要自己实现。总之很多功能还没有实现,这个程序够我写很长一段时间。

2018-4-21

现在是三月三五天假之中,明天最后一天。这段还是举步维艰吧,为了目录树,学JavaScript、TypeScript。目录树搞定了,要写文章发布系统,又要回过头继续Razor,结果发现有些东西快忘掉了,又痛苦好几天,总算是把目录树到文章显示这块的路由基本搞定。然后把 Markdown 文件转化为 HTML 显示也算是基本搞定了,找了半天,总算找到一个 MarkDig 比较好用,基本满足我的要求。现在可以不用自己去手动转 HTML 了,文件存储为 MarkDown 格式,点击后直接显示美化后带目录的网页。

现在的问题是,MarkDown 文章是存储为文件还是放数据库呢?亦或是直接纯静态网站,生成 HTML 进行存储呢?想来想去,还是存数据库吧,管理上方便很多。然后就是上网找数据库,决定使用 Postgresql。数据库要操作方便,还得学 EF Core,现在发现一个东西没学好,马上就要学新的东西了,应接不睱啊。好在数据库知识我是懂的,只是要学一个新工具还是需要不少时间成本的。五天假期不容易,也快完了。回头看发现这五天也没学到啥,没办法,慢慢来吧。现在要做的事是先把 Razor 中有关数据库的内容翻译完再说。

2018-3-1

这段时间翻译都是参考微软的机器翻译进行的,突然发现机器翻译也不是象我之前胸说的那么不谌。于是拿微软机器翻译好的过来,对照英文原文,更改有问题的地方。居然需要改的地方并不多,这回真是大幅度提高效率了。不过马上要开学了,翻译进度会放慢很多。

2018-2-7

这段时间用docsify,发现还是有些不足,特别是代码高亮这块,另外有些bug是没修复的,作者也不打算再维护了。文章显示有缺陷,这有点难受。前晚睡不差,突然想到,何不把文章生成HTML格式,然后网站做个硬链接连上,虽然阅读文章时没有树型目录,但好歹阅读起来很舒服。说干就干,半夜爬起来开工,折腾了两天,终于完工。虽然有些地方还是有些缺陷,但基本已经符合我的要求。页面看起来特别爽,特别是手机端。现在终于可以用手机舒服地看代码了!

制作过程为首先在网上找工具把markdown文件转化为html,然后加上头尾。代码高亮用了highlight.js,相信没有比它更好的了。CSS在网上找了很久,没找到完全满意的,只好在一款最满意的CSS基础上自己修改。给自己点个赞!终于又可以安静地写文章了。现在发布文章有点麻烦,我的文章发布系统一直在脑子里,但要实现不知道要等到猴年马月了。

2018-2-4

这几天捣鼓ASP.NET Core,准备开始写一系列ASP.NET Core入门的文章,已经写好第一篇了。做第二篇的准备时,查阅机器翻译的ASP.NET Core 2.0中文文档,突然发现很多地方翻译得一塌糊涂,根本没办法看啊,看来我对人工智能还是太乐观了点。本想过几天把这个翻译系列撒掉,换上自己写的入门系列的。现在看来还是把这系列先放着,继续慢慢翻译。

2018-1-31

今天下午,翻译完一篇文章,在网站更新完毕后,在网上乱逛,突然发现原来微软已经把ASP.NET Core 2.0文档翻译完毕了。 网址:https://docs.microsoft.com/zh-cn/aspnet/core/ 让我想不到的是翻译是由机器完成的,鼠标点在相应区域,还能显示英文原句。翻译出来的文章无任何异样,非常通顺。原来人工智能已经发展到这个地步了,不是我不知道,这世界变化快啊!差实让我大吃一惊啊!想想现在国内英语从小学到大学,一条巨大的产业链,养活了无数的人。虽然很多人对中国这样的英语教育颇有微词,我也是其中一个,因为当年我们是初中才学英语,现在幼儿园就开始学了,这就有点过份了。不过对于计算机这行业英语还是很重要的,没有真不行。

不敢想象十年后会是什么情景,这条产业链尸横遍野?当然需要面对面沟通时,外语专业肯定还是有用的,但其它的就难说了。以当今中国的发展势头,以及英美的衰落速度来看,将来英语还真就没那么重要了。所谓时代巨轮滚滚向前,顺之者昌,逆之者亡。按现在人工智能发展的速度,畅想一下将来出国旅游,拿一部手机,或许已经不是手机了,可以周游世界无语言障碍,的确很不错啊。其它行业呢?真不敢再想象。

这回翻译的工作是不需要再继续了,我的茅草屋也不是那么迫切了。 先专心学一段时间的.NET Core吧,然后再考虑是不是写一个系列的文章。

2018-1-30

终于可以坐下来安静地写文章了,从去年底买了服务器,一直在折腾网站,到现在正好一个月。一个月的时间,学Html5、CSS、Javascript、.NET Core、vue.js,然后搭网站。这些东西从来没学过,进去后突然间发现前端原来如此复杂,层出不穷,眼花缭乱的新技术,新框架让人绝望。本以为做个静态网站不难,但发现时间都花在调试上了。特别是想做响应式网站,头痛的东西特别多。到现在网站还有些bug,留着以后慢慢弄吧。学习的过程可以说是历尽心酸,甚至达到怀疑人生,怀疑智商的地步。还好,有些坎算是过了,有些还没过。

原本想在网站上弄个博客,然后装了ghost,写了几篇文章,但突然有一天折腾ghost,不知弄了哪里,居然启动不了了。写了几篇文章都去见马克思了。想想博客不太适合我,我希望发表的是系列文章,文章有目录导航,可以很方便地查看,有利于将来学生学习。于是找树型目录控件,发现vue框架的Element UI组件库有一个目录树是最好用的,很合适,于是开始学习vue.js。很痛苦地折腾了一段时间,搭了一个茅草屋,还只带一个房顶,用了几天,文章是发了,但极其不完善,有点搞不下去了,需要了解的东西实在太多。得先找个能放文章的地方,再慢慢学比较合适。于是想看看是不是有现成的。

找了几天,终于找到一个相对比较合适的--docsify,生成静态网站,Markdown写作,和vue.js官网的教程很类似。终于把已经翻译多时的几篇文章放了上去,显示效果不太尽如人意,还不如我的茅草房,C#代码无法上色。最大的缺点是左边目录并非树形控件,无法折叠,目录中的SOC很烦人。个人想法是SOC在窗口大小允许的情况下应该放右边,跟目录分开,不然很容易混淆。其它都还不错,算是勉强达到我想要的效果。我的想法是一边翻译ASP.NET Core 2.0文档,一边折腾我的茅草房,这回终于可以慢慢来了。

;

© 2018 - IOT小分队文章发布系统 v0.3